From: Marco Trevisan (TreviƱo) Date: Fri, 26 Apr 2024 17:23:58 +0000 (+0200) Subject: workspaceAnimation: Do not create clones for override redirect windows X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~226^2^2~193 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=3a34c16eca56bfa364d3415e777e309317de3c83;p=gnome-shell.git workspaceAnimation: Do not create clones for override redirect windows Override redirect windows manage their own positioning and size alone and are always sticky, so we're not covering them either with the animation MonitorsGroup, and thus there's no need to clone them or we'd end up having two windows painted. This was causing the shell tray icon window actors (that have no opacity by default but that are override redirect) to show up during the animation as their clone animation is not 0. The other option would be hide them during the animation phase, but there's no need for this. Part-of: --- diff --git a/js/ui/workspaceAnimation.js b/js/ui/workspaceAnimation.js index c83001496..b278113e2 100644 --- a/js/ui/workspaceAnimation.js +++ b/js/ui/workspaceAnimation.js @@ -58,6 +58,9 @@ class WorkspaceGroup extends Clutter.Actor { if (!window.showing_on_its_workspace() || this._isDesktopWindow(window)) return false; + if (window.is_override_redirect()) + return false; + if (!this._windowIsOnThisMonitor(window)) return false;